perm filename RR[MUS,LCS] blob
sn#316234 filedate 1977-11-10 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002
C00006 ENDMK
C⊗;
EXTERNAL FUNCTION GETINF(ARRAY J,INSR,INBT,INCH,INMX,INDR),
RDSMPL(ARRAY N,BITS);
ARRAY INF(1536);
VARIABLE /CNT,/RD,/SCNT,INCH,INSR,INMX,INDR,INBT,INBUF,
IX,/INC,RX,JZ,IZ;
FUNCTION PRNTIT(CNT,INSR,INBT,INCH,INMX,INDR,INBUF);
BEGIN
INBUF←1536-512*INBT ;
PRINT "SRATE=",INSR," BITS=",12+INBT*6," NCHNS=",INCH,
" MAXAMP=",INMX," DUR=",INDR/INSR/INCH;
INDR←INDR-2;
END;
FUNCTION READIN(RD);
BEGIN <DON'T FORGET TO INIT AND SCNT ← 0;
IF SCNT=0 THEN BEGIN
GETINF(INF,INSR,INBT,INCH,INMX,INDR); <HEADER IS READ INTO ARRAY INF.
PRNTIT(CNT,INSR,INBT,INCH,INMX,INDR,INBUF);
RDSMPL(INF,INBT);
CNT←0; JZ←0; RX←INF(0);
END;
SCNT←SCNT+INC;
INC←INC+P5;
IF SCNT > INDR THEN BEGIN <CHECK TO SEE IF SMPL CNT IS EXCEEDED
RD←0; RETURN(RD); END;
IX ← INF(JZ);
IZ←1-INT(JZ)+CNT;
RD←RX+(IX-RX)*IZ; < INTERPOLATION
CNT←CNT+INC; <UPDATE THE COUNTER
IF CNT < INBUF THEN RX←INF(CNT);
JZ←CNT+1;
IF JZ ≥ INBUF THEN BEGIN
RDSMPL(INF,INBT);
JZ←JZ-INBUF;
CNT←JZ-1;
IF CNT ≥ 0 THEN RX←INF(CNT);
END;
RETURN(RD);
END;
OUTFILE←"INCX.SND";
INSTRUMENT READA;
<IF P1 > .5 THEN BEGIN IF SCNT > 3620 THEN BEGIN PRINT RD;
<IF RD≠0 THEN PRINT CNT; IF RD ≠0 THEN PRINT SCNT;END;END;
OUTA←OUTA+P4*READIN(RD);
END;
SETMAG;1 12
INC← 1 ;
PLAY;
READA 0 1.46 0 1 .0000025 ;
SCNT←0; INFILE←"INC";
READA P1+P2 1.46 0 1 .0000025 ;
SCNT←0; INFILE←"INC";
READA P1+P2 1.46 0 1 .0000025 ;
SCNT←0; INFILE←"INC";
READA P1+P2 1.46 0 1 .0000025 ;
SCNT←0; INFILE←"INC";
READA P1+P2 1.46 0 1 .0000025 ;
SCNT←0; INFILE←"INC";
FINISH;